#pragma once

#include<iostream>
#include <string>

using namespace std;

bool
strLonger(const string& s1,const string& s2)
{
	return (s1.size() < s2.size());
}

class Compare
{
public:
	 
	

};
template<class T>
inline const T& MyMax(const T& t1, const T& t2)
{
	return t1 < t2 ? t1 : t2;
}


template<class T>
inline const T& MyMax(const T& t1, const T& t2, Compare comp)
{
	return comp::MyMax(t1, t2);
}



void ToCompare()
{

	cout << max(string("size"), string("hello")) <<endl;
	cout << max(string("size"), string("hello"),strLonger) <<endl;

}

